//验证手机
const phone = function (rule, value, callback) {
    if (value === '') {
        callback(new Error('手机号不能为空'))
    } else if (!/^1\d{10}$/.test(value)) {
        callback(new Error('手机号格式错误'))
    } else {
        callback()
    }
}

//验证邮箱
var email = (rule, value, callback) => {
    const mailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/
    if (!value) {
        return callback(new Error('邮箱不能为空'))
    }
    setTimeout(() => {
        if (mailReg.test(value)) {
            callback()
        } else {
            callback(new Error('请输入正确的邮箱格式'))
        }
    }, 100)
}

//验证浮点数
var float = (rule, value, callback) => {
    const mailReg = /^[0-9]+([.]{1}[0-9]+){0,1}$/
    if (!value) {
        return callback(new Error('不能为空'))
    }
    setTimeout(() => {
        if (mailReg.test(value)) {
            callback()
        } else {
            callback(new Error('只能输入整数及小数'))
        }
    }, 100)
}

//验证时间必须大于当前时间
var CurrentTime = (rule, value, callback) => {
    if (!value) {
        return callback(new Error('不能为空'))
    }
    setTimeout(() => {
        let date1 = new Date()
        let date2 = null

        if (value.constructor == Array) {
            date2 = new Date(value[0])
        } else {
            date2 = new Date(value)
        }

        console.log(rule, date1, date2)
        if (date1 <= date2) {
            callback()
        } else {
            callback(new Error('不可等于小于当前时间'))
        }
    }, 100)
}
// //验证密码
// var repassword = (rule, value, callback) => {
//     console.log(rule,this)
//     if (value === '') {
//         callback(new Error('请再次输入密码'));
//       } else if (value !== this.form.data.pwd) {
//         callback(new Error('两次输入密码不一致!'));
//       } else {
//         callback();
//       }
// }

export default {
    phone,
    email,
    float,
    CurrentTime
    // repassword
}